package com.benshou.bcss.common.user;

import com.benshou.bcss.common.j17common.annotation.Nullable;
import com.benshou.bcss.common.rest.RequestHeaderContext;

import java.util.List;

/**
 * 用户信息上下文
 *
 * @author <a href="mailto:liuzhenbang@benshou.com">Liu Zhenbang</a>
 */
public class UserContext {

    /**
     * 设置用户编号
     *
     * @param userNo 用户编号
     */
    public static void setUserNo(String userNo) {
        RequestHeaderContext.USER_NO.set(userNo == null ? null : List.of(userNo));
    }

    /**
     * @return 用户编号
     */
    @Nullable
    public static String getUserNo() {
        return RequestHeaderContext.USER_NO.getFirst();
    }

    /**
     * 移除用户编号
     */
    public static void removeUserNo() {
        RequestHeaderContext.USER_NO.remove();
    }
}
